reading gauche gauche_wiki https://gauche.shoutwiki.com/wiki/Main_Page MediaWiki 1.35.13 first-letter Media Special Talk User User talk reading gauche reading gauche talk File File talk MediaWiki MediaWiki talk Template Template talk Help Help talk Category Category talk Module Module talk Gadget Gadget talk Gadget definition Gadget definition talk Template:HeaderTemplate 10 7 12 2009-05-02T18:34:55Z MediaWiki default 30443056 wikitext text/x-wiki <div> <!-- Beginning of header section --> {|style="width:100%;margin-top:+.7em;background-color:#4682B4;border:1px solid #ccc;-moz-border-radius:20px" |style="width:45%;color:#000"| {|style="width:100%;border:solid 0px;background:none" |- |style="width:100%px;text-align:center;white-space:nowrap;color:#000" | <div style="font-size:195%;border:none;margin: 0;padding:.1em;color:#FFFFFF">{{{welcome}}}</div> |}<!-- Blurb & useful links --> |style="width:45%;font-size:125%;color:#FFFFFF"| {{{blurb}}} |}<!-- End of blurb & useful links --> </div> a384f27c7f43d66acecf5d65137f0fd5a41a122e Template:MainTemplate 10 9 18 14 2009-07-08T08:41:15Z MediaWiki default 30443056 wikitext text/x-wiki {{HeaderTemplate|welcome={{{welcome}}}|blurb={{{blurb}}}}} <br /> <!-- LEFT COLUMN --> {| width="100%" cellspacing="0" cellpadding="0" style="background:transparent;" |- | width="50%" style="vertical-align:top; padding-right:0.5em;" | <!-- Info about this site --> {{SectionTemplate|title={{{about_title}}}|content={{{about_content}}}}} | width="50%" style="vertical-align:top; padding-left:0.5em;" | <!-- Featured Article --> {{SectionTemplate|title={{{featured_title}}}|content={{{featured_content}}}}} |} <br /> <!-- RIGHT COLUMN --> {| width="100%" cellspacing="0" cellpadding="0" style="background:transparent;" |- | width="50%" style="vertical-align:top; padding-right:0.5em;" | <!-- Did you know... --> {{SectionTemplate|title={{{didyouknow_title}}}|content={{{didyouknow_content}}}}} | width="50%" style="vertical-align:top; padding-left:0.5em;" | <!-- Site news --> {{SectionTemplate|title={{{news_title}}}|content={{{news_content}}}}} |} __NOTOC__ __NOEDITSECTION__ 78f8386e9d2112600b0c1d1b84022fead288afdb Main Page 0 1 19 8 2009-07-08T08:42:32Z MediaWiki default 30443056 wikitext text/x-wiki {{MainTemplate | welcome = Welcome to '''{{SITENAME}}!''' | blurb = You can put a short description of your wiki here. | about_title = About this site | about_content = This is your new site! Feel free to start editing right away! If you need any help, don't hesitate to contact ShoutWiki's [[Special:ListUsers/staff|Customer Support Team]]. | featured_title = Featured Article | featured_content = You can put a "featured article" here to show off the very best pieces that your community has done &mdash; or alternatively, you can use this space for something else if featured articles aren't "your thing". | didyouknow_title = Did you know... | didyouknow_content = * ...that you can add your own "did you know" tidbits right here? | news_title = News | news_content = * This wiki was started! }} a8ae9f2f544922f44ef407d59dce5b9d42303d64 49 19 2018-05-01T06:19:21Z Sekinekohei 3357629 wikitext text/x-wiki =はじめに= Gaucheのソースコードをひらメソッドで読んでいます。 0eb8ad9ee8d33552caa02d5f24ab39f59d79fa40 50 49 2018-05-01T06:34:00Z Sekinekohei 3357629 /* はじめに */ wikitext text/x-wiki =はじめに= Gaucheのソースコードをひらメソッドで読んでいます。 Cのコードが読みたいので、コンパイルがC言語で書かれていた最後のバージョン 0.8.3 を対象としています。 =ソースコード= =データ構造= c0c17c508825f013d520a8c67a89aebe8709ea23 51 50 2018-05-01T06:51:47Z Sekinekohei 3357629 /* データ構造 */ wikitext text/x-wiki =はじめに= Gaucheのソースコードをひらメソッドで読んでいます。 Cのコードが読みたいので、コンパイルがC言語で書かれていた最後のバージョン 0.8.3 を対象としています。 =ソースコード= =データ構造= * [[ScmVM]] 039f547865db831d3a2853453a16fca4f2a56bad 53 51 2018-05-01T07:19:06Z Sekinekohei 3357629 wikitext text/x-wiki =はじめに= Gaucheのソースコードをひらメソッドで読んでいます。 Cのコードが読みたいので、コンパイルがC言語で書かれていた最後のバージョン 0.8.3 を対象としています。 =ソースコード= =データ構造= * [[ScmVM]] =実行までの流れ= * [[main]]() * [[Scm_Load]]() * [[Scm_Apply]]() * [[load]]() * [[Scm_VMLoad]]() * [[Scm_VMLoadFromPort]] * [[load_body]]() * [[load_cc]]() * [[compile_for_eval]]() * [[Scm_Compile]]() 29c0533a3c120f9fd154d74083dbd37dafd1c66d 54 53 2018-05-01T07:19:50Z Sekinekohei 3357629 /* データ構造 */ wikitext text/x-wiki =はじめに= Gaucheのソースコードをひらメソッドで読んでいます。 Cのコードが読みたいので、コンパイルがC言語で書かれていた最後のバージョン 0.8.3 を対象としています。 =ソースコード= =データ構造= * [[ScmObj]] * [[ScmVM]] =実行までの流れ= * [[main]]() * [[Scm_Load]]() * [[Scm_Apply]]() * [[load]]() * [[Scm_VMLoad]]() * [[Scm_VMLoadFromPort]] * [[load_body]]() * [[load_cc]]() * [[compile_for_eval]]() * [[Scm_Compile]]() 9ea072ff888d0339e7850eaa099073d5b8ebe921 Template:SectionTemplate 10 8 20 13 2009-07-12T21:34:10Z MediaWiki default 30443056 wikitext text/x-wiki <h2 style="border:none; background-color:#4682B4; padding:0.2em 0; margin:0; color:#ffffff; font-size:125%; font-weight:bold; text-indent:0.5em; font-variant:small-caps; -moz-border-radius: 10px">{{{title}}}</h2> <div style="margin-bottom:1em; padding:0.5em 0.8em 0.5em 0.8em;"> {{{content}}} </div> a3eaeb792831e5830ecbb2db32c638dc9f8f7349 Category:Utility templates 14 11 22 2009-12-30T17:54:25Z MediaWiki default 30443056 wikitext text/x-wiki This category is for '''Utility templates'''. [[Category:Templates]] 15e385a420bfe4cfee4b3d0534649f6788fba68b Category:Templates 14 12 23 2009-12-30T17:55:03Z MediaWiki default 30443056 wikitext text/x-wiki This category is for '''Templates'''. [[Category:Browse]] a8cfd0a0ac921fa55b5414969f163aad6d6ede6f Category:Browse 14 13 24 2009-12-30T17:56:16Z MediaWiki default 30443056 wikitext text/x-wiki This is a starting point which can be used to access any article on this wiki. [[Category:Browse]] 317d0a35193ca0fd12391f7d765809291a2c756e User:MediaWiki default 2 23 35 34 2010-12-30T05:43:26Z MediaWiki default 30443056 wikitext text/x-wiki This account is used by [[s:ShoutWiki Staff|ShoutWiki Staff]] when performing maintenance tasks. This account is not a bot and cannot be blocked. If there is a problem with an edit from this account, please inform a member of the [[s:Customer Support Team|Customer Support Team]] using [[Special:Contact]]. Thanks, ShoutWiki Staff 4bac90676744e50249bf2391b4f33736fa8b0efc User talk:Cook879 3 27 41 40 2012-09-08T10:46:56Z MediaWiki default 30443056 wikitext text/x-wiki {| align="center" style="background: #ccf; border: 3px solid #8888AA; width: 100%; -moz-border-radius: 80px;" |- | Hi. Welcome to my talk page. Feel free to [http://{{SERVERNAME}}/w/index.php?title=User_talk:Cook879&action=edit&section=new post a message] below. |} e7fa7b50cc89ce2aa64672457d39d2e53a3af758 File:Wiki.png 6 28 42 2012-09-13T14:06:18Z MediaWiki default 30443056 wikitext text/x-wiki Wiki logo. Upload a new image over this one to set your own logo. 734fa5f907fd11ef18faa6435506d54c7d7d14ee User talk:Lcawte 3 29 43 2013-03-28T18:59:56Z MediaWiki default 30443056 wikitext text/x-wiki {{s::User talk:Lcawte/header}} 3559a9a3d5b050de27eb5d8307d77d116689c1d1 User talk:Solar Dragon 3 31 46 45 2013-08-21T21:30:04Z MediaWiki default 30443056 wikitext text/x-wiki {{s::User:Solar Dragon/Talkheader}} ce291e93fb8d269830d46539397abfd041cbaa75 User talk:Sekinekohei 3 32 48 2018-05-01T06:06:48Z ShoutWiki 11 wikitext text/x-wiki Hi Sekinekohei, thank you for choosing ShoutWiki to make your wiki. We would suggest that you start your wiki off by doing these few basic things: *Upload a logo. You can do this by uploading an image over [[:File:Wiki.png]]. (not available on some skins) *Design your [[Main Page]]. The main page is likely the first thing users will see. It should be attractive and catch the eye. *Start building content. All wikis need content to become the best they can be. If you need help with making a logo, skin or favicon, please see [[s:w:logocreation|ShoutWiki's Logo Creation Wiki]]. If you need any help with building your wiki, feel free to contact [[s:ShoutWiki Staff|ShoutWiki staff]] either via their talk pages or via [[Special:Contact]]. Alternatively, you can talk to us, or other users, via [[s:ShoutWiki Hub:IRC|IRC]]. Thank you again for using ShoutWiki. [[s:ShoutWiki Staff|ShoutWiki staff]] 06:05, 1 May 2018 751dc39e88e0723d7af856e788c94b829a90f88e ScmVM 0 33 52 2018-05-01T06:58:43Z Sekinekohei 3357629 Created page with "=概要= * [[vm.h]]で定義 * ScmVMRec の別名 * GaucheVMの管理用データ =実装= 267 struct ScmVMRec { 268 SCM_HEADER; 269 #ifdef GAUCHE_USE_PTHREADS 270..." wikitext text/x-wiki =概要= * [[vm.h]]で定義 * ScmVMRec の別名 * GaucheVMの管理用データ =実装= 267 struct ScmVMRec { 268 SCM_HEADER; 269 #ifdef GAUCHE_USE_PTHREADS 270 pthread_t thread; /* the thread executing this VM. */ 271 #endif /*!GAUCHE_USE_PTHREADS*/ 272 int state; /* thread state. PUBLIC. */ 273 ScmInternalMutex vmlock; /* mutex to be used to lock this VM 274 structure. PUBLIC. */ 275 ScmInternalCond cond; /* the condition variable to wait for state 276 change of this VM. PUBLIC. */ 277 ScmVM *canceller; /* the thread that called thread-terminate! 278 on this thread. PUBLIC. */ 279 ScmObj name; /* Scheme thread name. */ 280 ScmObj specific; /* Scheme thread specific data. */ 281 ScmProcedure *thunk; /* Entry point of this VM. */ 282 ScmObj result; /* Result of thunk. */ 283 ScmObj resultException; /* Exception that causes the thread to terminate.*/ 284 ScmModule *module; /* current global namespace. note that this 285 is used only in compilation. */ 286 ScmCStack *cstack; /* current escape point. see the comment of 287 "C stack rewinding" below. */ 288 unsigned int runtimeFlags; /* Runtime flags */ 289 unsigned int compilerFlags; /* Compiler flags */ 290 unsigned int queueNotEmpty; /* Bitmask if sigq or finq is not empty */ 291 292 ScmPort *curin; /* current input port */ 293 ScmPort *curout; /* current output port */ 294 ScmPort *curerr; /* current error port */ 295 ScmVMParameterTable parameters; /* parameter table */ 296 VMの仮想レジスタ 297 /* Registers */ 298 SCM_PCTYPE pc; /* Program pointer. Points list of 299 instructions to be executed. */ 300 ScmEnvFrame *env; /* Current environment. */ 301 ScmContFrame *cont; /* Current continuation. */ 302 ScmObj *argp; /* Current argument pointer. Points 303 to the incomplete environment frame 304 being accumulated. This is a part of 305 continuation. */ 306 ScmObj val0; /* Value register. */ 307 ScmObj vals[SCM_VM_MAX_VALUES]; /* Value register for multiple values */ 308 int numVals; /* # of values */ 309 310 ScmObj handlers; /* chain of active dynamic handlers */ 311 312 ScmObj *sp; /* stack pointer */ 313 ScmObj *stack; /* bottom of allocated stack area */ 314 ScmObj *stackBase; /* base of current stack area */ 315 ScmObj *stackEnd; /* end of current stack area */ 316 317 /* Escape handling */ 318 ScmObj exceptionHandler; /* the current exception handler installed by 319 with-exception-handler. */ 320 ScmEscapePoint *escapePoint;/* chain of escape points (a kind of one-shot 321 continuation). used by system's default 322 exception handler to escape from the error 323 handlers. */ 324 int escapeReason; /* temporary storage to pass data across 325 longjmp(). */ 326 void *escapeData[2]; /* ditto. */ 327 328 /* Custom debugger */ 329 ScmObj defaultEscapeHandler; 330 331 /* Program information */ 332 ScmObj load_next; /* list of the directories to be searched */ 333 ScmObj load_history; /* history of the nested load */ 334 ScmObj load_port; /* current port from which we are loading */ 335 336 /* Signal information */ 337 ScmSignalQueue sigq; 338 sigset_t sigMask; /* current signal mask */ 339 }; =情報= 38728069c42c689cac188cb529a30c0554d990cd ScmObj 0 34 55 2018-05-01T07:28:54Z Sekinekohei 3357629 Created page with "=概要= * gauche.h で定義 * scheme object を表現するためのデータ構造 * 共通のヘッダ部分を定義し、 =実装= 137 /* 138 * An opaque pointer...." wikitext text/x-wiki =概要= * gauche.h で定義 * scheme object を表現するためのデータ構造 * 共通のヘッダ部分を定義し、 =実装= 137 /* 138 * An opaque pointer. All Scheme objects are represented by 139 * this type. 140 */ 141 typedef struct ScmHeaderRec *ScmObj; 142 143 /* 144 * The class structure. ScmClass is actually a subclass of ScmObj. 145 */ 146 typedef struct ScmClassRec ScmClass; 294 /* A common header for all Scheme objects */ 295 typedef struct ScmHeaderRec { 296 ScmClass *klass; /* private */ 297 } ScmHeader; 311 /* A common header for objects whose class is defined in Scheme */ 312 typedef struct ScmInstanceRec { 313 ScmClass *klass; 314 ScmObj *slots; 315 } ScmInstance; 316 317 #define SCM_INSTANCE_HEADER ScmInstance hdr /* for declaration */ 430 /*--------------------------------------------------------- 431 * CLASS 432 */ 433 434 /* See class.c for the description of function pointer members. 435 There's a lot of voodoo magic in class structure, so don't touch 436 those fields casually. Also, the order of these fields must be 437 reflected to the class definition macros below */ 438 struct ScmClassRec { 439 SCM_INSTANCE_HEADER; 440 void (*print)(ScmObj obj, ScmPort *sink, ScmWriteContext *mode); 441 int (*compare)(ScmObj x, ScmObj y, int equalp); 442 int (*serialize)(ScmObj obj, ScmPort *sink, ScmObj context); 443 ScmObj (*allocate)(ScmClass *klass, ScmObj initargs); 444 ScmClass **cpa; /* class precedence array, NULL terminated */ 445 int numInstanceSlots; /* # of instance slots */ 446 int coreSize; /* size of core structure; 0 == unknown */ 447 unsigned int flags; 448 ScmObj name; /* scheme name */ 449 ScmObj directSupers; /* list of classes */ 450 ScmObj cpl; /* list of classes */ 451 ScmObj accessors; /* alist of slot-name & slot-accessor */ 452 ScmObj directSlots; /* alist of slot-name & slot-definition */ 453 ScmObj slots; /* alist of slot-name & slot-definition */ 454 ScmObj directSubclasses; /* list of direct subclasses */ 455 ScmObj directMethods; /* list of methods that has this class in 456 its specializer */ 457 ScmObj initargs; /* saved key-value list for redefinition */ 458 ScmObj modules; /* modules where this class is defined */ 459 ScmObj redefined; /* if this class is obsoleted by class 460 redefinition, points to the new class. 461 if this class is being redefined, points 462 to a thread that is handling the 463 redefinition. (it won't be seen by 464 Scheme; see class.c) 465 otherwise #f */ 466 ScmInternalMutex mutex; /* to protect from MT hazard */ 467 ScmInternalCond cv; /* wait on this while a class being updated */ 468 }; 6803f7c74664c182c724d9ec3b931dd97d6f63d5